package com.health.system.service.system;

import java.io.IOException;
import java.util.List;
import java.util.Map;

import cn.org.rapid_framework.page.Page;
import cn.org.rapid_framework.page.PageRequest;

import java.util.*;

import com.health.system.model.system.Role;

import cn.org.rapid_framework.util.*;
import cn.org.rapid_framework.web.util.*;
import cn.org.rapid_framework.page.*;
import cn.org.rapid_framework.page.impl.*;

/**
 * <p>Title: 角色管理 服务事物接口 </p>
 * <p>Description: spring事务层 由impl层实现它 (健康通) </p>
 * Copyright: Copyright (c) 2011-03 
 * Company: 
 * 
 * @author bzq
 * @version 1.0 
*/

public interface RoleManager {

	Role getById(java.lang.String id);

	void save(Role u);

	void update(Role u);

	void removeById(java.lang.String id);
	
	Boolean removeByIdArry(Role u);

	Page findByPageRequest(PageRequest<Map> q);
 

	List getRoleList(Role role);

	List selectList();
	List getListByMap(Map map);
	
	/**
	* <p>查询所有节点树</p>
	* <p>以树形结构查询所有节点</p>
	* @param Role u
	* @author bzq
	* @return List<Role>
	*/
	List getAllTree();
	
	/**
	 * <p>查询当前节点的所有上级节点</p>
	 * <p>以树形结构查询</p>
	 * @param Role u
	 * @author bzq
	 * @return List<Role>
	*/
	List getParentTree(Role role);
	/**
	 * <p>查询当前节点的所有下级节点</p>
	 * <p>以树形结构查询</p>
	 * @param Role u
	 * @author bzq
	 * @return List<Role>
	*/
	List getSubsetTree(Role role);
	/**
	 * <p>按当前用户,查询它角色节点的所有下级节点</p>
	 * <p>以树形结构查询</p>
	 * @param Map map
	 * @author bzq
	 * @return List<Role>
	*/	
	List getTree(Map map);
}
